Skip to content

feat: run Java dedup as java agent#183

Merged
officialasishkumar merged 2 commits intomainfrom
codex/java-dedup-agent
Apr 30, 2026
Merged

feat: run Java dedup as java agent#183
officialasishkumar merged 2 commits intomainfrom
codex/java-dedup-agent

Conversation

@officialasishkumar
Copy link
Copy Markdown
Member

@officialasishkumar officialasishkumar commented Apr 29, 2026

Related Issue

  • NA

Describe the changes you've made

Adds Java-agent support to the Keploy Java SDK so Java dynamic dedup can run without application code importing or compiling against Keploy classes.

Key changes:

  • Prepares io.keploy:keploy-sdk:2.0.0 as the Java agent artifact.
  • Adds premain and agentmain entrypoints for -javaagent usage.
  • Adds Java agent manifest attributes for Premain-Class and Agent-Class.
  • Keeps the existing coverage socket protocol and JaCoCo integration behind the agent.
  • Supports class discovery for Maven/Gradle output, classpath entries, plain jars, Spring Boot jars, servlet/WAR layouts, and custom class directories.
  • Keeps Keploy SDK internals out of coverage while still allowing application packages under io.keploy.* to be analyzed.
  • Adds a Java-agent smoke script that validates the supported launch and archive layouts.

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Code style update (formatting, local variables)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • This change requires a documentation update

How did you test your code changes?

  • mvn -B -DskipTests package
  • ./scripts/smoke-javaagent.sh
  • git diff HEAD^ HEAD --check
  • The smoke script verifies Java-agent startup, per-test coverage capture, and class discovery across Maven, Gradle, classpath fallback, plain jar, Spring Boot layout, and servlet/WAR layout.

Describe if there is any unusual behaviour of your code(Write NA if there isn't)

NA

Checklist:

  • My code follows the style guidelines of this project.
  • I have performed a self-review of my own code.
  • I have commented my code, particularly in hard-to-understand areas and used java doc.
  • I have made corresponding changes to the documentation.
  • My changes generate no new warnings.
  • I have added smoke coverage that proves the feature works.

Screenshots (if any)

NA

Signed-off-by: Asish Kumar <officialasishkumar@gmail.com>
Signed-off-by: Asish Kumar <officialasishkumar@gmail.com>
@officialasishkumar officialasishkumar merged commit 8d48e62 into main Apr 30, 2026
5 checks passed
@officialasishkumar officialasishkumar deleted the codex/java-dedup-agent branch April 30, 2026 09:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant